#ifndef ADVDSPROFILE_ADVDSPROFILE_HPP
#define ADVDSPROFILE_ADVDSPROFILE_HPP

#include <TweenEngine/TweenManager.h>
#include <cpp3ds/Graphics.hpp>
#include <cpp3ds/Network.hpp>
#include "States/StateStack.hpp"
#include "GUI/NinePatch.hpp"
#include "AssetManager.hpp"

namespace AdvDSProfile {

class AdvDSProfile: public cpp3ds::Game {
public:
	AdvDSProfile();
	~AdvDSProfile();
	void update(float delta);
	void processEvent(cpp3ds::Event& event);
	void renderTopScreen(cpp3ds::Window& window);
	void renderBottomScreen(cpp3ds::Window& window);

private:
	StateStack *m_stateStack;
	cpp3ds::Text textFPS;

	// Shared State context variables
	std::vector<char*> m_data;
	cpp3ds::String m_text;
};

}

#endif // ADVDSPROFILE_ADVDSPROFILE_HPP
